1. Field of the Invention
The present invention relates to an expert system, and more particularly to an expert system using both deep knowledge and shallow knowledge.
2. Description of the Prior Art
In order to develop an expert system which utilizes expert knowledge stored in a database and is capable of responding to various questions from users, both deep knowledge for expanding a coverage of the system and shallow knowledge for improving an inference efficiency are important.
In a field of transistor, an example of the deep knowledge is a circuit equation which describes a characteristic of an element such as EQU Constant.times.V.sub.BE =Ic
"A collection current is proportional to a base-emitter voltage"
On the other hand, an example of the shallow knowledge, in the field of transistor is operating knowledge (experiential knowledge) relating to a manner of use of the element such as
"Change a base voltage to change a collector current".
The deep knowledge is fundamental knowledge such as a physical rule which exactly describes a principle of operation of the system under consideration. The inference result of the expert system based on the deep knowledge does not include error. However, in the expert system which is based on only the deep knowledge, even if a user inputs a fact that "the base voltage has risen", it cannot infer that "the collector current will increase" unless local information on the emitter voltage is given. If the expert system tries to produce the lacking information that suggests the value of emitter voltage from all related information, the amount of information to be processed is too large to be processed in a practical processing time. As a result, the system may not infer what an expert can infer based on his common sense.
On the other hand, in the expert system which uses the shallow knowledge, it can infer that "the collector current will increase" based on the fact that "the base voltage has risen" inputted by the user. Thus, it can infer what the expert can infer based on his common sense. However, if the volume of knowledge stored in the database is small, it will misinfer that "the collector voltage will increase" even if the emitter voltage has also risen by the same amount, as it infers for the case where only the base voltage has risen.
The qualitative reasoning has been initiated about ten years ago by Hayes, P. J., "The Naive Physics Manifesto", in Michie, D. (ed.) Expert Systems in the Micro-Electronic Age, Edinburgh University Press, Edinburgh, 1979, and Rieger, C. et al. "The Declarative Representation and Procedural Simulation of Causality in Physical Mechanism", Proc. of IJCAI-77, pp. 250-256, 1977, which were intended to model a simple process of understanding by human beings of daily physical phenomenon. Those studies are important in that they are basic techniques for realizing on a computer a mechanism which includes no gap between handlings of the deep knowledge and the shallow knowledge to the objects and the physical phenomena.
The technique of analysis of cause and effect and analysis of object devised by de Kleer ("Qualitative Reasoning-Model of Thinking Based on Common Sense", Association of Artificial Intelligence, Vol. 2, No. 1, pp. 30-43, 1987) is particularly important. By using this technique, it is possible to analyze and predict, on the computer, a behavior of a certain equipment by using equations (corresponding to the deep knowledge) which qualitatively describe laws and rules relating to the behavior of the circuit, and local information. Further, by using rules corresponding to the shallow knowledge, it can perform object analysis of the equipment such as "where two transistors are connected in series, each transistor functions as an amplifier and the combination circuit of the two transistors is also an amplifier". Thus, the technique by de Kleer can be a fundamental technique in developing the system which uses both the deep knowledge and the shallow knowledge.
The technique of knowledge compiler by Yamaguchi (Yamaguchi et al., "Basic Design of Knowledge Compiler Based on Deep Knowledge", Association of Artificial Intelligence, Vol. 2, No. 3, pp. 333-340, 1987) is also important. By using this technique, it is possible to generate shallow knowledge for error diagnostic such as "If a temperature at a point XX series, YY is in error" by using the deep knowledge on the behavior of the equipment such as "Heat is absorbed at one point and the heat is dissipated at another point". Thus it is possible to construct an expert system having a high execution efficiency. This technique can also be a fundamental technique to develop the system which uses both the deep knowledge and the shallow knowledge.
The prior art techniques can handle two-layer knowledge, that is, the deep knowledge and the shallow knowledge but the expressions of the knowledge of the respective layers are the equation in one layer and the "if . . . than . . . " expression in the other layer, or the knowledge on the behavior of equipment in one layer and the knowledge on error diagnostic in the other layer. Thus, there is no consistency therebetween and there is a gap between the handlings of the deep knowledge and the shallow knowledge. As a result, the system cannot handle "shallower knowledge simplified based on shallow knowledge" and hence it is difficult to construct an expert system for an extremely complex equipment which requires a multi-layer knowledge base.
In the expert system, it is an important problem how to collect error-free shallow knowledge which is experiential knowledge of experts.
In order to support the collection of such knowledge, various methods for learning by a computer have been proposed. Among others, Tom M. Mitchell et al., "Explanation-Based Generalization: A unifying View", Machine Learning 1986, pp. 47-80, is important. By using this technique, it is possible to generate a theorem (shallow knowledge) useful to solve a problem based on a user-inputted case where a problem was solved and an axiom (deep knowledge) relating to the problem. However, this learning method intends to generate a consistent theorem from a consistent axiom, and it cannot be used in learning knowledge containing contradiction which is required in solving common problems, as stated in the reference (Section 4.2.1 on pages 68-70). For example, in the field of electrical circuit, if "the base voltage has risen" and "the emitter voltage has risen more", the shallow knowledge infers that "the collector current will increase" but the deep knowledge infers that "the collector current will decrease". Thus, the deep knowledge and the shallow knowledge are contradictory to each other and the above explanation-based generalization technique cannot be used.